Program code to be run on gaming machines sometimes needs to be updated to address problems with existing code or to add a capability. Given the nature of gambling regulations, there is a need for a high degree of confidence in the security of an electronic gaming machines. Accordingly, current software updates are performed by physically swapping memory components of a gaming machine. There is a need for alternative techniques for updating software which provides and a high degree of security.